Database > RDS for MySQL > DB 엔진

DB 엔진

MySQL의 경우 버전 번호는 버전 = X.Y.Z로 구성됩니다. NHN Cloud RDS 용어에서 X.Y는 메이저 버전을, Z는 마이너 버전 번호를 나타냅니다.

RDS에서 제공하는 DB 엔진 버전

아래에 명시된 버전을 사용할 수 있습니다.

버전 비고
8.0
MySQL 8.0.35
MySQL 8.0.34
MySQL 8.0.33
MySQL 8.0.32
MySQL 8.0.28
MySQL 8.0.23
MySQL 8.0.18
5.7
MySQL 5.7.37
MySQL 5.7.33 외부의 백업본으로 DB 인스턴스를 복원할 수 없습니다.
MySQL 5.7.26
MySQL 5.7.19
MySQL 5.7.15
5.6
MySQL 5.6.33 신규 DB 인스턴스를 생성할 수 없습니다. 기존 DB 인스턴스의 읽기 복제본 생성, 복원만 지원합니다.

MySQL에서 버전 번호는 버전 = X.Y.Z로 구성됩니다. NHN Cloud의 RDS for MySQL에서는 X.Y의 경우 메이저 버전을, Z는 마이너 버전을 나타냅니다.

DB 엔진 버전 관리

DB 인스턴스 생성 이후, 해당 DB 인스턴스 수정과 함께 DB 엔진 버전 변경을 진행할 수 있습니다.

[주의] DB 버전 변경 시도 시 업그레이드만 지원하며, 다운그레이드는 지원하지 않습니다.

DB 엔진 버전 업그레이드가 진행될 경우, 메이저 버전 번호만 변경되는 경우는 메이저 버전 업그레이드로, 마이너 버전 번호만 변경되는 경우는 마이너 버전 업그레이드로 간주합니다. DB 엔진 메이저 버전 업그레이드 시도 시에는 바로 다음의 메이저 버전의 DB 엔진 버전에 대해 업그레이드가 가능합니다.

MySQL 5.7에서 MySQL 8.0으로 업그레이드하기 위한 사전 점검

MySQL 8.0과 MySQL 5.7은 상당수의 비호환성 요소가 포함되어 있습니다. 따라서 5.7에서 8.0 버전으로 메이저 버전 DB 엔진 업그레이드를 진행하는 경우 문제가 발생할 수 있습니다. 이에 문제 발생이 예상되는 일부 항목에 대한 사전 점검 과정이 필요합니다. 다음은 사전 점검이 필요한 항목입니다.

  • mysqlcheck를 통한 버전 업그레이드 결격 사항이 없어야 한다.
  • INFORMATION_SCHEMA.VIEWS를 통해 확인했을 때 컬럼명이 64자를 초과하는 내용이 없어야 한다.
  • 데이터 사전에서 사용되는 테이블과 동일한 명칭의 테이블이 없어야 한다.
  • 길이가 255자 또는 1020바이트를 초과하는 개별 ENUM, SET 열 요소가 있는 테이블, 저장 프로시저가 없어야 한다.
  • 외래 키 제약 조건 이름이 64자를 초과하는 테이블이 없어야 한다.
  • lower_case_table_names 설정을 1로 변경하려는 경우 스키마 이름이 소문자인지 확인한다.
  • lower_case_table_names 설정을 1로 변경하려는 경우 테이블 이름이 소문자인지 확인한다.
  • 특정 파티션 체크를 통해 추출되는 파티션 테이블이 없어야 한다.
  • InnoDB 시스템 테이블 스페이스와 일반 테이블 스페이스를 포함하는 공유 테이블 스페이스에 상주하는 테이블 파티션이 없어야 한다.

DB 버전 업그레이드 사전 점검에 대해서는 다음과 같은 방법으로 결과 확인이 가능합니다. - 5.7에서 8.0으로 업그레이드 하기 위한 체크리스트 세부사항(https://static.toastoven.net/prod_rds/23.08.17/Check_5.7_to_8.0_ko.xlsx)을 활용한 직접 확인 - 콘솔에서 DB 버전 업그레이드 시도 시 DB 엔진 업그레이드 사전 확인 버튼을 이용한 결과 확인 - DB 버전 업그레이드 시도를 통한 결과 확인

콘솔에서 DB 엔진 업그레이드 사전 확인을 통한 결과 및 DB 버전 업그레이드 시도를 통한 결과의 경우 개별 DB 인스턴스의 로그 탭에 생성된 db_version_upgrade_compatibility.log를 통해 세부 내역 확인이 가능합니다. 세부 내역 항목은 각각 다음의 의미를 가집니다. - CHECK_BY_MYSQL_CHECK: mysqlcheck를 통한 버전 업그레이드 결격 사항이 없어야 한다. - COLUMN_LENGHT_LIMIT_CHECK: INFORMATION_SCHEMA.VIEWS를 통해 확인했을 때 컬럼명이 64자를 초과하는 내용이 없어야 한다. - DUPLICATE_NAME_WITH_DATA_DICT: 데이터 사전에서 사용되는 테이블과 동일한 명칭의 테이블이 없어야 한다. - ENUM_SET_SIZE_CHECK: 길이가 255자 또는 1020바이트를 초과하는 개별 ENUM, SET 열 요소가 있는 테이블, 저장 프로시저가 없어야 한다. - FOREIGN_KEY_LENGTH_LIMIT_CHECK: 외래 키 제약 조건 이름이 64자를 초과하는 테이블이 없어야 한다. - LOWER_CASE_SCHEMAS_NAMES_CHECK: lower_case_table_names 설정을 1로 변경하려는 경우 스키마 이름이 소문자인지 확인한다. - LOWER_CASE_TABLE_NAMES_CHECK: lower_case_table_names 설정을 1로 변경하려는 경우 테이블 이름이 소문자인지 확인한다. - PARTITION_TABLE_CHECK: 특정 파티션 체크를 통해 추출되는 파티션 테이블이 없어야 한다. - PROPERTY_LENGTH_LIMIT_CHECK: InnoDB 시스템 테이블 스페이스와 일반 테이블 스페이스를 포함하는 공유 테이블 스페이스에 상주하는 테이블 파티션이 없어야 한다.

또한, 5.7에서는 사용되나 8.0에서는 제거 혹은 변경된 사항에 관해 확인이 필요합니다. - SQL 변경 항목 가이드 - 8.0에서 제거된 기능 가이드

더미 DB 인스턴스를 사용한 DB 엔진 버전 업그레이드

DB 인스턴스 수정 화면에서 DB 엔진 버전 변경을 시도할 때 더미 DB 인스턴스 사용 여부를 선택해 버전 업그레이드 과정에서의 고가용성을 가져올 수 있습니다. 더미 DB 인스턴스 사용을 선택하면 DB 버전 업그레이드를 위한 예비 마스터가 생성됩니다.

[주의] 더미 DB 인스턴스의 경우 업그레이드 과정 중 임시 예비 마스터를 생성하므로, 해당 옵션은 고가용성 구성이 아닌 경우에만 사용할 수 있습니다.

고가용성 DB 인스턴스 업그레이드 시 장애 조치 수동 제어

DB 인스턴스가 고가용성으로 구성되어 있을 때 예비 마스터의 엔진 버전을 먼저 업그레이드한 뒤 장애 조치를 사용하여 예비 마스터를 마스터로 승격시킵니다. 장애 조치는 마스터의 서비스를 잠깐 중단시키기 때문에 사용자가 원하는 시점에 장애 조치를 시작할 수 있습니다. 버전 업그레이드 시 장애 조치 수동 제어 설정을 사용하면 사용자가 콘솔에서 직접 장애 조치를 시작할 수 있습니다.

[주의] 장애 조치 수동 제어는 60시간 이상 트리거 되지 않으면 자동으로 업그레이드 작업이 취소됩니다.

노후 운영체제를 사용하는 경우

2022년 5월 10일 이전에 생성된 DB 인스턴스의 경우 내부 운영체제가 노후되어 DB 버전을 업그레이드하는 경우 DB 인스턴스가 교체됩니다. 교체 과정에서 DB 인스턴스의 식별자 및 내부 IP 주소가 변경됩니다. 알림 그룹의 감시 대상 인스턴스 및 이벤트 구독의 이벤트 소스는 변경된 식별자로 자동으로 교체됩니다. 단일 DB 인스턴스의 경우 DB 버전 변경 시 반드시 더미 DB 인스턴스를 사용해야 합니다. 고가용성 DB 인스턴스의 경우 DB 인스턴스 교체 과정에서 장애 조치를 이용하여 마스터와 예비 마스터의 역할이 변경됩니다. 마스터의 부하가 심할 경우 장애 조치에 실패할 수 있으므로 DB 버전 변경은 부하가 심하지 않은 시간에 수행하는 것을 권장합니다.

[주의] IP ACL 혹은 보안 그룹에서 기존 DB 인스턴스의 내부 IP를 직접 사용하는 경우 주의해야 합니다.

MySQL을 위한 옵션

MySQL을 위한 MariaDB 서버 감사 플러그인 지원

  • RDS for MySQL에서는 MariaDB 감사 플러그인을 사용하여 MySQL DB 인스턴스용 감사 플러그인을 제공합니다.

[주의] 일부 MySQL 버전에서는 지원하지 않을 수 있으며, 지원하지 않는 버전으로의 버전 업그레이드 진행 시 해당 플러그인을 사용할 수 없습니다.

지원 버전

MySQL 버전 서버 감사 플러그인 지원 여부
8.0
MySQL 8.0.34 O
MySQL 8.0.33 O
MySQL 8.0.32 O
MySQL 8.0.28 O
MySQL 8.0.23 O
MySQL 8.0.18 O
5.7
MySQL 5.7.37 X
MySQL 5.7.33 O
MySQL 5.7.26 O
MySQL 5.7.19 O
MySQL 5.7.15 X
MySQL 5.6
MySQL 5.6.33 O
TOP